import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import {
    ModalModule,
    TabsModule,
    TooltipModule,
    BsDropdownModule
} from 'ngx-bootstrap';
import { AppCommonModule } from '@app/shared/common/app-common.module';
import { UtilsModule } from '@shared/utils/utils.module';
import { CountoModule } from '@node_modules/angular2-counto';
//import { EasyPieChartModule } from 'ng2modules-easypiechart';
import {
    DataTableModule,
    MenubarModule,
    DialogModule,
    SpinnerModule
} from 'primeng/primeng';
import { PaginatorModule } from 'primeng/primeng';
import { TreeTableModule } from 'primeng/primeng';
import {
    InputTextModule,
    CalendarModule,
    InputSwitchModule,
    MultiSelectModule,
    DropdownModule
} from 'primeng/primeng';
import { TableModule } from 'primeng/components/table/table';
import { PipelineRoutingModule } from '@app/pipeline/pipeline-routing.module';
import { StepsComponent } from '@app/pipeline/step/step.component';
import { FlexsComponent } from '@app/pipeline/flex/flex.component';
import { WarningTimeModalComponent } from '@app/pipeline/flex/warning-time-modal.component';
import { FlexItemComponent } from '@app/pipeline/flex/flex-item.component';
import { ActAbnormalModalComponent } from '@app/pipeline/step/act-abnormal-modal.component';
import { ActBaseModalComponent } from '@app/pipeline/shared/act-base.component';
import { GY1ModalComponent } from '@app/pipeline/shared/工艺类/正常节点/gy1.component';
import { RW2ModalComponent } from '@app/pipeline/shared/任务类/正常节点/rw2.component';
import { ZL1ModalComponent } from '@app/pipeline/shared/质量类/正常节点/zl1.component';
import { YL2ModalComponent } from '@app/pipeline/shared/原材料类/正常节点/yl2.component';
import { YL10ModalComponent } from '@app/pipeline/shared/原材料类/正常节点/yl10.component';
import { GXZXModalComponent } from '@app/pipeline/shared/工序执行类/正常节点/gxzx.component';
import { ZL4ModalComponent } from '@app/pipeline/shared/质量类/正常节点/zl4.component';
import { ZL5ModalComponent } from '@app/pipeline/shared/质量类/正常节点/zl5.component';
import { ZL6ModalComponent } from '@app/pipeline/shared/质量类/正常节点/zl6.component';
import { GZ1ModalComponent } from '@app/pipeline/shared/工装类/正常节点/gz1.component';
import { GZ2ModalComponent } from '@app/pipeline/shared/工装类/正常节点/gz2.component';
import { SB1ModalComponent } from '@app/pipeline/shared/设备类/正常节点/sb1.component';
import { SB2ModalComponent } from '@app/pipeline/shared/设备类/正常节点/sb2.component';
import { GJ1ModalComponent } from '@app/pipeline/shared/工具类/正常节点/gj1.component';
import { GJ2ModalComponent } from '@app/pipeline/shared/工具类/正常节点/gj2.component';
import { LJ2ModalComponent } from '@app/pipeline/shared/量具类/正常节点/lj2.component';
import { LJ1ModalComponent } from '@app/pipeline/shared/量具类/正常节点/lj1.component';
import { RW7ModalComponent } from '@app/pipeline/shared/任务类/正常节点/rw7.component';
import { CB1ModalComponent } from '@app/pipeline/shared/成本类/正常节点/cb1.component';
import { CB2ModalComponent } from '@app/pipeline/shared/成本类/正常节点/cb2.component';
import { CB3ModalComponent } from '@app/pipeline/shared/成本类/正常节点/cb3.component';
import { CB4ModalComponent } from '@app/pipeline/shared/成本类/正常节点/cb4.component';
import { CB5ModalComponent } from '@app/pipeline/shared/成本类/正常节点/cb5.component';
import { XC11ModalComponent } from '@app/pipeline/shared/现场问题处理类/正常节点/xc11.component';
import { FL1ModalComponent } from '@app/pipeline/shared/辅助物质类/正常节点/fl1.component';
import { DA1ModalComponent } from '@app/pipeline/shared/档案类/正常节点/da1.component';
import { GY03ModalComponent } from '@app/pipeline/shared/工艺类/正常节点/gy03.component';


import { YL2OutModalComponent } from '@app/pipeline/shared/原材料类/正常节点/yl2-out-modal.component';
import { YL10ChildModalComponent } from '@app/pipeline/shared/原材料类/正常节点/yl10-modal.component';

// import {GanttCharComponent} from "../gantt/ganttchar.component";
//import { GanttCharModalComponent } from '@app/pipeline/gantt/gantt-char-modal.component';S
import { YL1ModalComponent } from './shared/原材料类/正常节点/yl1.component';
import { RW21ModalComponent } from './shared/任务类/正常节点/rw21.component';
import { RW23ModalComponent } from './shared/任务类/正常节点/rw23.component';
import { RW4ModalComponent } from './shared/任务类/正常节点/rw4.component';
import { RW24ModalComponent } from './shared/任务类/正常节点/rw24.component';
import { ActCommonModalComponent } from './shared/act-common.component';

const COMPONENTS = [
    ActCommonModalComponent,
    GY1ModalComponent,
    RW2ModalComponent,
    RW4ModalComponent,
    RW21ModalComponent,
    RW23ModalComponent,
    RW24ModalComponent,
    ZL1ModalComponent,
    YL2ModalComponent,
    YL1ModalComponent,
    YL10ModalComponent,
    GXZXModalComponent,
    ZL4ModalComponent,
    ZL5ModalComponent,
    ZL6ModalComponent,
    GZ1ModalComponent,
    GZ2ModalComponent,
    SB1ModalComponent,
    SB2ModalComponent,
    GJ1ModalComponent,
    GJ2ModalComponent,
    LJ2ModalComponent,
    LJ1ModalComponent,
    RW7ModalComponent,
    CB1ModalComponent,
    CB2ModalComponent,
    CB3ModalComponent,
    CB4ModalComponent,
    CB5ModalComponent,
    XC11ModalComponent,
    FL1ModalComponent,
    DA1ModalComponent,
    GY03ModalComponent
];

const COMPONENT_MODALS = [YL2OutModalComponent, YL10ChildModalComponent];

@NgModule({
    entryComponents: COMPONENTS,
    imports: [
        CommonModule,
        FormsModule,
        ModalModule,
        TabsModule,
        TooltipModule,
        AppCommonModule,
        UtilsModule,
        PipelineRoutingModule,
        CountoModule,
        //EasyPieChartModule,
        DataTableModule,
        TableModule,
        MultiSelectModule,
        PaginatorModule,
        TreeTableModule,
        CalendarModule,
        InputTextModule,
        InputSwitchModule,
        DropdownModule,
        CalendarModule,
        BsDropdownModule.forRoot(),
        MenubarModule,
        DialogModule,
        SpinnerModule
    ],
    declarations: [
        StepsComponent,
        ActAbnormalModalComponent,
        FlexsComponent,
        FlexItemComponent,
        ActBaseModalComponent,
        WarningTimeModalComponent,
        ...COMPONENTS,
        ...COMPONENT_MODALS,
        // GanttCharComponent,
        //GanttCharModalComponent
    ]
})
export class PipelineModule {}
